package cn.tedu.spring.life;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

@Service
public class Life {
    private String mean;

    // 一、 实例化，通过无参构造
    public Life(){
        System.out.println("1.无参构造实例化");
    }

    // 二、通过set方法进行赋值
    @Value("生命的意义在于享受世界")
    public void setMean(String mean) {
        this.mean = mean;
        System.out.println("2、通过set方法进行属性赋值");
    }
    // 三、Bean对象生命周期的第三阶段
    @PostConstruct
    public void init(){
        System.out.println("3、生命周期初始化方法");
    }

    // 五、Bean对象生命周期的销毁阶段@PreDestroy
    // IoC容器关闭才会执行
    @PreDestroy
    public void destroy(){
        System.out.println("5、Bean对象销毁阶段，生命周期销毁方法");
    }
}
